To organize and store collections of data, computing systems may employ digitized databases. Relational databases, which are digital databases based on a relational model, serve as one type of database. These types of databases may utilize a model to organize data into one or more tables, which have columns and rows, with a unique key identifying each row. Each row may serve as a record, while the columns may define particular attributes of each record. For example, a table may store information on individuals, such as a first name, last name, age, and favorite color. In such an example, the first name, last name, age, and favorite color would each form a separate column. An entry recording such information for a given individual would make up each row in the table. For example, a row may include “Caroline,” “O'Neil,” “27,” and “cerulean,” respectively. One can add additional columns to define more attributes for Caroline O'Nell, such as a shoe size and hair color. To work with data in relational databases like the one in this example, a computer terminal may transmit a query to access data or send an update to add new entries or edit existing entries. These types of message may be sent to a relational database using Structured Query Language (SQL). SQL may include commands for data query, data manipulation, data definition (e.g., defining or updating columns in a relational database table), and data access control.
Separate from relational databases, other types of computer data storage exists which may not require the strict table format of a relational database. Certain computer systems use nonrelational or “NoSQL” databases, for example, include data structures that can be viewed as being more flexible than relational database tables. Instead of using a tabular format like relational databases, NoSQL databases may employ data models including column data models, document data models, key-value data models, and graph data models. Each of these data models offer different level of performance, scalability, flexibility, complexity, and functionality. Further, most NoSQL databases do not include the functionality of having joins in queries, which does not permit one-to-one compatibility with relational databases.